import { TrainerFileDao } from '../dao/trainerFileDao';
import { TrainerFile } from '../../types/trainerFile';
import { Page, PageReq } from '../../types/page';

export class TrainerFileService {
  // 创建患者报告文件
  static async create(trainerFile: Omit<TrainerFile, 'id'>) {
    return TrainerFileDao.create(trainerFile);
  }

  // 更新患者报告文件信息
  static async update(trainerFile: Partial<TrainerFile>) {
    return TrainerFileDao.update(trainerFile);
  }

  // 删除患者报告文件
  static async delete(id: number) {
    return TrainerFileDao.delete(id);
  }

  // 根据ID查询患者报告文件
  static async findById(id: number): Promise<TrainerFile | null> {
    return TrainerFileDao.findById(id);
  }

  // 根据患者ID查询所有报告文件
  static async findByTrainerId(trainerId: number): Promise<TrainerFile[]> {
    return TrainerFileDao.findByTrainerId(trainerId);
  }

  // 查询所有患者报告文件
  static async list(): Promise<TrainerFile[]> {
    return TrainerFileDao.list();
  }

  /**
   * 分页查询患者报告文件列表
   */
  static async page(params: PageReq<TrainerFile>): Promise<Page<TrainerFile>> {
    return TrainerFileDao.page(params);
  }
}